home *** CD-ROM | disk | FTP | other *** search
/ Apple WWDC 1996 / WWDC96_1996 (CD).toast / Technology Materials / MacOS 8 Resources / Developer Tools / Mac OS 8 Interfaces & Libraries / Interfaces / IDLIncludes / DriverGestalt.idl < prev    next >
Text File  |  1996-05-01  |  4KB  |  114 lines

  1. /*
  2.      File:        DriverGestalt.idl
  3.  
  4.      Contains:    Driver Gestalt interfaces
  5.  
  6.      Version:    Technology:    System 7.5
  7.                  Release:    Universal Interfaces 3.0d3 on Copland DR1
  8.  
  9.      Copyright:    © 1984-1996 by Apple Computer, Inc.  All rights reserved.
  10.  
  11.      Bugs?:        If you find a problem with this file, send the file and version
  12.                  information (from above) and the problem description to:
  13.  
  14.                      Internet:    apple.bugs@applelink.apple.com
  15.                      AppleLink:    APPLE.BUGS
  16.  
  17. */
  18. #ifndef __DRIVERGESTALT_IDL__
  19. #define __DRIVERGESTALT_IDL__
  20.  
  21. #include <somobj.idl>
  22. #include <somcls.idl>
  23.  
  24. #ifndef __TYPES_IDL__
  25. #include <Types.idl>
  26. #endif
  27. #ifndef __OSUTILS_IDL__
  28. #include <OSUtils.idl>
  29. #endif
  30. #ifndef __SCSI_IDL__
  31. #include <SCSI.idl>
  32. #endif
  33.  
  34. #ifdef __SOMIDL__
  35.  
  36. #if FOR_SYSTEM7_ONLY
  37. /*__________________________________________________________________________________*/
  38. /* The Driver Gestalt bit in the dCtlFlags */
  39. /*__________________________________________________________________________________*/
  40. /* Driver Gestalt related csCodes */
  41. /*__________________________________________________________________________________*/
  42. /* Driver Gestalt selectors */
  43. /*__________________________________________________________________________________*/
  44. /* status parameter block for Driver Gestalt calls */
  45. typedef SOMLargeStruct            DriverGestaltParam;            /* Derived from a struct of 50 bytes in size */
  46.  
  47. /*
  48.  Note that the various response definitions are overlays of the response fields above.
  49.    For instance the deviceType response would be returned in driverGestaltResponse.
  50.    The DriverGestaltPurgeResponse would be in driverGestaltResponse and driverGestaltResponse1
  51. */
  52. /* GetDriverGestaltDevTResponse(gestaltPtr)->deviceType */
  53. /*__________________________________________________________________________________*/
  54. /* Device Types response */
  55. typedef SOMFourByteStruct        DriverGestaltDevTResponse;    /* Derived from a struct of 4 bytes in size */
  56.  
  57. /*__________________________________________________________________________________*/
  58. /* Device Interfaces response */
  59. typedef SOMFourByteStruct        DriverGestaltIntfResponse;    /* Derived from a struct of 4 bytes in size */
  60.  
  61. /*__________________________________________________________________________________*/
  62. /* Power Saving */
  63. typedef SOMFourByteStruct        DriverGestaltPowerResponse;    /* Derived from a struct of 4 bytes in size */
  64.  
  65. /*__________________________________________________________________________________*/
  66. /* Disk Specific */
  67. typedef SOMFourByteStruct        DriverGestaltSyncResponse;    /* Derived from a struct of 4 bytes in size */
  68.  
  69. typedef SOMFourByteStruct        DriverGestaltBootResponse;    /* Derived from a struct of 4 bytes in size */
  70.  
  71. typedef SOMLargeStruct            DriverGestaltAPIResponse;    /* Derived from a struct of 22 bytes in size */
  72.  
  73. /* Flags for purge permissions */
  74. /* Driver purge permission structure */
  75. typedef SOMLargeStruct            DriverGestaltPurgeResponse;    /* Derived from a struct of 8 bytes in size */
  76.  
  77. typedef SOMFourByteStruct        DriverGestaltEjectResponse;    /* Derived from a struct of 4 bytes in size */
  78.  
  79. /* Flags for Ejection Features field */
  80. /*__________________________________________________________________________________*/
  81. /* CD-ROM Specific */
  82. /*
  83.  The CDDeviceCharacteristics result is returned in csParam[0] and csParam[1] of a 
  84.    standard CntrlParam parameter block called with csCode kdgGetCDDeviceInfo.
  85. */
  86. typedef SOMFourByteStruct        CDDeviceCharacteristics;    /* Derived from a struct of 4 bytes in size */
  87.  
  88. /* Flags for CD Features field */
  89. /* Transport types */
  90. /*
  91.  the following are used by PC Exchange (and houdini)
  92.  Control Codes
  93. */
  94. /* Status Codes*/
  95. /* the result codes to come from the driver interface */
  96. /* requisite structures for PCX control and status calls*/
  97. /* GestaltSelector for Finding Driver information*/
  98. /* Partition information passed back and forth between PCX and the driver*/
  99. typedef SOMLargeStruct            partInfoRec;                /* Derived from a struct of 12 bytes in size */
  100.  
  101. typedef OpaquePtr                partInfoRecPtr;                /* Substituted OpaquePtr for ``partInfoRec*'' */
  102.  
  103. typedef SOMFourByteStruct        vPartInfoRec;                /* Derived from a struct of 4 bytes in size */
  104.  
  105. typedef OpaquePtr                vPartInfoRecPtr;            /* Substituted OpaquePtr for ``vPartInfoRec*'' */
  106.  
  107. /* Information related to DOS partitions*/
  108. #endif
  109.  
  110. #endif /* __SOMIDL__ */
  111.  
  112. #endif /* __DRIVERGESTALT_IDL__ */
  113.  
  114.